1. Technical Field
The present invention relates generally to a computer implemented method for improving the use of computing resources. Particularly, the present invention relates to a computer implemented method for increasing the memory capacity in a power-constrained system.
2. Description of the Related Art
A data processing system uses memory for storing data used by an application. Storing data in memory and reading data from memory consumes electrical power (power).
A data processing system has a limited amount of power available for distribution amongst the various data processing system components, including memory. Increasing the memory size increases the power demand of the memory component.
An application's performance is dependent upon an amount of memory available in the data processing system and a speed at which the memory responds to the application's memory access request. Reading and writing to main memory is generally performed using cachelines. A cacheline of memory is a defined size of data that can be read from or written into the main memory to/from higher level caches. A page is a unit of memory size at which granularity the operating systems manage memory allocation, access and transfer of data from primary storage (main memory) to secondary storage (e.g. disks). Under certain circumstances, a page of memory can be removed (paged-out) from the memory to a secondary storage, such as a hard disk drive. When an application accesses any cacheline in a paged-out page, the page has to be brought in (paged-in) to the main memory before the cacheline request can be serviced.
Page-out and page-in operations have an adverse effect on an application's performance. An amount of paging in and out of pages from a memory is a factor of the workload on the data processing system and the size of the memory in the data processing system.